package com.cy.jt.sercurity.controller;

import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/*
*可以将这里的controller看成是系统内部的一个资源对象,我们
* 要求访问此对象中的方法时需要进行权限检查
* */
@RestController
public class ResourceController {

    //    添加操作
    @PreAuthorize("hasRole('admin')") //该注解用于描述方法,此注解描述方法以后,再访问方法首先要进行权限检测,
    @RequestMapping("/doCreate")
    public String doCreate() {

        return "create resource (insert data) ok";
    }

    //新增操作
    @PreAuthorize("hasAnyAuthority('sys:res:retrieve')")
    @RequestMapping("/doRetrieve")
    public String doRetrieve() {

        return "retrieve resource (retrieve data) ok";
    }
    //删除操作
    @PreAuthorize("hasAnyAuthority('sys:res:delete')")
    @RequestMapping("/doDelete")
    public String doDelete() {

        return "delete resource (delete data) ok";
    }
}
